/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package beans;

import database_beans.Publikacije;
import java.io.Serializable;
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.Transaction;
import server.Util;

/**
 *
 * @author stefan
 */
@ManagedBean
@ViewScoped
public class Publikacija implements Serializable{

    private ArrayList<Publikacije> publikacije;
    
    private Publikacije selectedPublikacija;
    
    private ArrayList<Publikacije> filtered = new ArrayList<>();
    
    
    /**
     * Creates a new instance of Publikacija
     */
    public Publikacija() {
        loadPublikacije();
    }

    public ArrayList<Publikacije> getPublikacije() {
        return publikacije;
    }

    public void setPublikacije(ArrayList<Publikacije> publikacije) {
        this.publikacije = publikacije;
    }

    public Publikacije getSelectedPublikacija() {
        return selectedPublikacija;
    }

    public void setSelectedPublikacija(Publikacije selectedPublikacija) {
        this.selectedPublikacija = selectedPublikacija;
    }

    public ArrayList<Publikacije> getFiltered() {
        return filtered;
    }

    public void setFiltered(ArrayList<Publikacije> filtered) {
        this.filtered = filtered;
    }
    
    private void loadPublikacije(){
        Session session = Util.getSesion();
        Transaction t = session.beginTransaction();
        try{
        Criteria cr = session.createCriteria(Publikacije.class);
        publikacije = new ArrayList<Publikacije>(cr.list());
        t.commit();
        }catch(Exception e){
            t.rollback();
        }
    }
    
}
